home *** CD-ROM | disk | FTP | other *** search
/ Visual Basic Toolbox / Visual Basic Toolbox (P.I.E.)(1996).ISO / graphics / peacoc / sampldll.frm < prev    next >
Text File  |  1994-10-19  |  11KB  |  443 lines

  1. VERSION 2.00
  2. Begin Form Form1 
  3.    Caption         =   "Color By Name"
  4.    ClientHeight    =   4425
  5.    ClientLeft      =   1440
  6.    ClientTop       =   1980
  7.    ClientWidth     =   5655
  8.    Height          =   5115
  9.    Icon            =   SAMPLDLL.FRX:0000
  10.    Left            =   1380
  11.    LinkTopic       =   "Form1"
  12.    ScaleHeight     =   4425
  13.    ScaleWidth      =   5655
  14.    Top             =   1350
  15.    Width           =   5775
  16.    Begin ListBox List2 
  17.       Height          =   3930
  18.       Left            =   2955
  19.       TabIndex        =   1
  20.       Top             =   300
  21.       Width           =   2520
  22.    End
  23.    Begin ListBox List1 
  24.       BackColor       =   &H00FFFFFF&
  25.       Height          =   3930
  26.       Left            =   165
  27.       TabIndex        =   0
  28.       Top             =   285
  29.       Width           =   2520
  30.    End
  31.    Begin CommonDialog CMDialog 
  32.       Left            =   2535
  33.       Top             =   3525
  34.    End
  35.    Begin Label Label2 
  36.       Caption         =   "User Defined Colors"
  37.       Height          =   255
  38.       Left            =   2955
  39.       TabIndex        =   3
  40.       Top             =   45
  41.       Width           =   2085
  42.    End
  43.    Begin Label Label1 
  44.       Caption         =   "Predefined Colors"
  45.       Height          =   255
  46.       Left            =   210
  47.       TabIndex        =   2
  48.       Top             =   45
  49.       Width           =   2085
  50.    End
  51.    Begin Menu M_FILE 
  52.       Caption         =   "&File"
  53.       Begin Menu M_EXIT 
  54.          Caption         =   "E&xit"
  55.       End
  56.    End
  57.    Begin Menu M_EDIT 
  58.       Caption         =   "&Edit"
  59.       Begin Menu M_ADD_COLOR 
  60.          Caption         =   "&Add Color"
  61.       End
  62.       Begin Menu M_CHANGE 
  63.          Caption         =   "&Change Color"
  64.       End
  65.       Begin Menu M_DELETE 
  66.          Caption         =   "&Delete Color"
  67.       End
  68.    End
  69.    Begin Menu M_VIEW 
  70.       Caption         =   "&View"
  71.       Begin Menu M_VIEW_COLOR 
  72.          Caption         =   "&Color Name"
  73.          Begin Menu M_NAME_USER 
  74.             Caption         =   "&User Defined"
  75.          End
  76.          Begin Menu M_NAME_PRE 
  77.             Caption         =   "&Predefined"
  78.          End
  79.       End
  80.       Begin Menu M_DETAIL 
  81.          Caption         =   "Color &Detail"
  82.          Begin Menu M_COLOR_USER 
  83.             Caption         =   "&User Defined"
  84.          End
  85.          Begin Menu M_COLOR_PRE 
  86.             Caption         =   "&Predefined"
  87.          End
  88.       End
  89.    End
  90. End
  91. Option Explicit
  92.  
  93. Sub Form_Load ()
  94.  
  95.   Dim winDir As String
  96.   Dim infile As Integer
  97.   Dim inline As String
  98.   Dim pos As Integer
  99.   Dim listString As String
  100.  
  101.   On Error GoTo ErrorEditRgb
  102.  
  103.   '
  104.   ' get a list of the colors supported
  105.   '
  106.   listString = Space$(10 * 1024) ' 10 K
  107.  
  108.   cbnGetColorList listString, 10 * 1024
  109.  
  110.   ' find the double 0 at the end
  111.   pos = InStr(listString, Chr$(0) + Chr$(0))
  112.   ' leave one of the 0s for the end of the last string
  113.   listString = Left$(listString, pos)
  114.  
  115.   pos = InStr(listString, Chr$(0))
  116.   While pos <> 0
  117.     List1.AddItem Mid$(listString, 1, pos - 1)
  118.     listString = Mid$(listString, pos + 1, Len(listString))
  119.     pos = InStr(listString, Chr$(0))
  120.   Wend
  121.  
  122.   listString = Space$(10 * 1024)
  123.  
  124.   cbnGetUserColorList listString, 10 * 1024
  125.  
  126.   ' find the double 0 at the end
  127.   pos = InStr(listString, Chr$(0) + Chr$(0))
  128.   ' leave one of the 0s for the end of the last string
  129.   listString = Left$(listString, pos)
  130.  
  131.   pos = InStr(listString, Chr$(0))
  132.   While pos <> 0
  133.     List2.AddItem Mid$(listString, 1, pos - 1)
  134.     listString = Mid$(listString, pos + 1, Len(listString))
  135.     pos = InStr(listString, Chr$(0))
  136.   Wend
  137.  
  138.   '
  139.   ' point the lists to the right place
  140.   '
  141.   If List1.ListCount <> 0 Then
  142.     List1.ListIndex = 0
  143.     List1_DblClick
  144.   End If
  145.  
  146.   If List2.ListCount <> 0 Then
  147.     List2.ListIndex = 0
  148.     List2_DblClick
  149.   End If
  150.  
  151. ErrorEditRgb:
  152.   Exit Sub
  153.  
  154. End Sub
  155.  
  156. Sub List1_Click ()
  157.  
  158.   List1_DblClick
  159.  
  160. End Sub
  161.  
  162. Sub List1_DblClick ()
  163.  
  164.   Dim colorName As String
  165.   Dim Color As Long
  166.  
  167.   colorName = List1.List(List1.ListIndex)
  168.   
  169.   If cbnColorExists(colorName) = CBN_NOT_EXISTS Then
  170.     MsgBox "Error: Color name " + colorName + " does not exist", 48, "Color Name Error"
  171.     Exit Sub
  172.   End If
  173.  
  174.   Color = cbnGetColor(colorName, CLng(List1.BackColor))
  175.   List1.BackColor = Color
  176.  
  177. End Sub
  178.  
  179. Sub List2_Click ()
  180.  
  181.   List2_DblClick
  182.  
  183. End Sub
  184.  
  185. Sub List2_DblClick ()
  186.  
  187.   Dim colorName As String
  188.   Dim Color As Long
  189.  
  190.   colorName = List2.List(List2.ListIndex)
  191.   
  192.   If cbnColorExists(colorName) = CBN_NOT_EXISTS Then
  193.     MsgBox "Error: Color name " + colorName + " does not exist", 48, "Color Name Error"
  194.     Exit Sub
  195.   End If
  196.  
  197.   Color = cbnGetColor(colorName, CLng(List2.BackColor))
  198.   List2.BackColor = Color
  199.  
  200. End Sub
  201.  
  202. Sub M_ADD_COLOR_Click ()
  203.  
  204.   Dim colorName As String
  205.  
  206.   On Error GoTo ErrorHandler
  207.  
  208.   colorName = InputBox("Enter New Color Name:", "Color Name")
  209.   If colorName = "" Then
  210.     Exit Sub
  211.   End If
  212.  
  213.    If cbnColorExists(colorName) = CBN_EXISTS And cbnUserColorExists(colorName) = CBN_NOT_EXISTS Then
  214.     MsgBox "Error: Color " + colorName + " already exists", 48, "Color Name Error"
  215.     Exit Sub
  216.   End If
  217.  
  218.    If cbnUserColorExists(colorName) = CBN_EXISTS Then
  219.     MsgBox "Error: User Color " + colorName + " already exists", 48, "Color Name Error"
  220.     Exit Sub
  221.   End If
  222.  
  223.   CMDialog.CancelError = True
  224.   CMDialog.Flags = &H2&
  225.   CMDialog.Action = 3
  226.   cbnAddUserColor colorName, CLng(CMDialog.Color)
  227.   List2.BackColor = CMDialog.Color
  228.   List2.AddItem colorName
  229.   List2.ListIndex = List2.NewIndex
  230.  
  231. ErrorHandler:
  232.   ' user pressed the cancel button
  233.   Exit Sub
  234.  
  235. End Sub
  236.  
  237. Sub M_CHANGE_Click ()
  238.   
  239.   Dim colorName As String
  240.   Dim Color As Long
  241.   Dim cnt As Integer
  242.  
  243.   On Error GoTo ErrorHandler2
  244.  
  245.   colorName = InputBox("Enter Color Name To Change:", "Color Name", List2.List(List2.ListIndex))
  246.   If colorName = "" Then
  247.     Exit Sub
  248.   End If
  249.  
  250.   If cbnColorExists(colorName) = CBN_EXISTS And cbnUserColorExists(colorName) = CBN_NOT_EXISTS Then
  251.     MsgBox "Error: " + colorName + " is predefined - can only change user colors", 48, "Color Name Error"
  252.     Exit Sub
  253.   End If
  254.  
  255.   If cbnUserColorExists(colorName) = CBN_NOT_EXISTS Then
  256.     MsgBox "Error: User Color " + colorName + " does not exist", 48, "Color Name Error"
  257.     Exit Sub
  258.   End If
  259.  
  260.   Color = cbnGetColor(colorName, CLng(List2.BackColor))
  261.   CMDialog.Color = Color
  262.   CMDialog.CancelError = True
  263.   CMDialog.Flags = &H2& Or &H1&
  264.   CMDialog.Action = 3
  265.   cbnAddUserColor colorName, CLng(CMDialog.Color)
  266.   List2.BackColor = CMDialog.Color
  267.  
  268.   '
  269.   ' find colorName in the list and set the index to it
  270.   '
  271.   For cnt = 0 To List2.ListCount
  272.     If List2.List(cnt) = colorName Then
  273.       List2.ListIndex = cnt
  274.       Exit For
  275.     End If
  276.   Next
  277.  
  278. '
  279. ' Error handling here please
  280. '
  281. ErrorHandler2:
  282.   ' user pressed the cancel button
  283.   Exit Sub
  284.  
  285. End Sub
  286.  
  287. Sub M_COLOR_PRE_Click ()
  288.  
  289.   Dim colorName As String
  290.   Dim Color As Long
  291.  
  292.   On Error GoTo ErrorHandlerColorPre
  293.  
  294.   colorName = InputBox("Enter Color Name To View:", "Color Name", List1.List(List1.ListIndex))
  295.   If colorName = "" Then
  296.     Exit Sub
  297.   End If
  298.  
  299.   If cbnColorExists(colorName) = CBN_NOT_EXISTS Then
  300.     MsgBox "Error: Color " + colorName + " does not exist", 48, "Color Name Error"
  301.     Exit Sub
  302.   End If
  303.  
  304.   Color = cbnGetColor(colorName, CLng(List1.BackColor))
  305.   List1.BackColor = Color
  306.   CMDialog.Color = Color
  307.   CMDialog.CancelError = True
  308.   CMDialog.Flags = &H2& Or &H1&
  309.   CMDialog.Action = 3
  310.  
  311. ErrorHandlerColorPre:
  312.   ' user pressed the cancel button
  313.   Exit Sub
  314.  
  315.  
  316. End Sub
  317.  
  318. Sub M_COLOR_USER_Click ()
  319.   
  320.   Dim colorName As String
  321.   Dim Color As Long
  322.  
  323.   On Error GoTo ErrorHandlerColorUser
  324.  
  325.   colorName = InputBox("Enter Color Name To View:", "Color Name", List2.List(List2.ListIndex))
  326.   If colorName = "" Then
  327.     Exit Sub
  328.   End If
  329.  
  330.   If cbnColorExists(colorName) = CBN_NOT_EXISTS Then
  331.     MsgBox "Error: Color " + colorName + " does not exist", 48, "Color Name Error"
  332.     Exit Sub
  333.   End If
  334.  
  335.   Color = cbnGetColor(colorName, CLng(List2.BackColor))
  336.   List2.BackColor = Color
  337.   CMDialog.Color = Color
  338.   CMDialog.CancelError = True
  339.   CMDialog.Flags = &H2& Or &H1&
  340.   CMDialog.Action = 3
  341.  
  342. ErrorHandlerColorUser:
  343.   ' user pressed the cancel button
  344.   Exit Sub
  345.  
  346.  
  347. End Sub
  348.  
  349. Sub M_DELETE_Click ()
  350.   
  351.   Dim colorName As String
  352.   Dim Color As Long
  353.   Dim cnt As Integer
  354.  
  355.   On Error GoTo ErrorHandlerDelete
  356.  
  357.   colorName = InputBox("Enter Color Name To Delete:", "Color Name", List2.List(List2.ListIndex))
  358.   If colorName = "" Then
  359.     Exit Sub
  360.   End If
  361.  
  362.   If cbnColorExists(colorName) = CBN_EXISTS And cbnUserColorExists(colorName) = CBN_NOT_EXISTS Then
  363.     MsgBox "Error: " + colorName + " is predefined - can only delete user colors", 48, "Color Name Error"
  364.     Exit Sub
  365.   End If
  366.  
  367.   If cbnUserColorExists(colorName) = CBN_NOT_EXISTS Then
  368.     MsgBox "Error: User Color " + colorName + " does not exist", 48, "Color Name Error"
  369.     Exit Sub
  370.   End If
  371.  
  372.   cbnDeleteUserColor colorName
  373.  
  374.   '
  375.   ' find colorname in the user defined list and
  376.   ' blow it away
  377.   '
  378.   For cnt = 0 To List2.ListCount
  379.     If List2.List(cnt) = colorName Then
  380.       List2.RemoveItem cnt
  381.       Exit For
  382.     End If
  383.   Next
  384.  
  385.   List2.ListIndex = 0
  386.   List2_Click
  387.  
  388. '
  389. ' Error handling here please
  390. '
  391. ErrorHandlerDelete:
  392.   ' user pressed the cancel button
  393.   Exit Sub
  394.  
  395. End Sub
  396.  
  397. Sub M_EXIT_Click ()
  398.  
  399.   End
  400.  
  401. End Sub
  402.  
  403. Sub M_NAME_PRE_Click ()
  404.   
  405.   Dim colorName As String
  406.   Dim Color As Long
  407.  
  408.   colorName = InputBox("Enter Color Name to View:", "View Color By Name", List1.List(List1.ListIndex))
  409.   If colorName = "" Then
  410.     Exit Sub
  411.   End If
  412.  
  413.   If cbnColorExists(colorName) = CBN_NOT_EXISTS Then
  414.     MsgBox "Error: Color name " + colorName + " does not exist", 48, "Color Name Error"
  415.     Exit Sub
  416.   End If
  417.  
  418.   Color = cbnGetColor(colorName, CLng(List1.BackColor))
  419.   List1.BackColor = Color
  420.  
  421. End Sub
  422.  
  423. Sub M_NAME_USER_Click ()
  424.   
  425.   Dim colorName As String
  426.   Dim Color As Long
  427.  
  428.   colorName = InputBox("Enter Color Name to View:", "View Color By Name", List2.List(List2.ListIndex))
  429.   If colorName = "" Then
  430.     Exit Sub
  431.   End If
  432.  
  433.   If cbnColorExists(colorName) = CBN_NOT_EXISTS Then
  434.     MsgBox "Error: Color name " + colorName + " does not exist", 48, "Color Name Error"
  435.     Exit Sub
  436.   End If
  437.  
  438.   Color = cbnGetColor(colorName, CLng(List2.BackColor))
  439.   List2.BackColor = Color
  440.  
  441. End Sub
  442.  
  443.